Short-term enhancement in celp speech coding

ABSTRACT

A speech-coding device includes a fixed codebook, an adaptive codebook, a short-term enhancement circuit, and a summing circuit. The short-term enhancement circuit connects an output of the fixed codebook to a summing circuit. The summing circuit adds an adaptive codebook contribution to a fixed codebook contribution. The short-term enhancement circuit can also be connected to a synthesis filter to emphasize the spectral formants in an encoder and a decoder.

1. CROSS REFERENCE TO RELATED APPLICATIONS

[0001] This application claims the benefit of provisional application serial No. 60/232,939 filed on Sep. 15, 2000. The following co-pending and commonly assigned U.S. patent applications have been filed on the same day as the provisional application. All of these applications relate to and further describe other aspects of the embodiments disclosed in this application and are incorporated by reference in their entirety.

[0002] U.S. patent application Ser. No. ______, “SELECTABLE MODE VOCODER SYSTEM,” Attorney Reference Number: 98RSS365CIP (10508/4), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0003] U.S. patent application Ser. No. ______, “INJECTING HIGH FREQUENCY NOISE INTO PULSE EXCITATION FOR LOW BIT RATE CELP,” Attorney Reference Number: 00CXT0065D (10508/5), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0004] U.S. patent application Ser. No. ______, “SYSTEM OF DYNAMIC PULSE POSITION TRACKS FOR PULSE-LIKE EXCITATION IN SPEECH CODING,” Attorney Reference Number: 00CXT0573N (10508/7), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0005] U.S. patent application Ser. No. ______, “SPEECH CODING SYSTEM WITH TIME-DOMAIN NOISE ATTENUATION,” Attorney Reference Number: 00CXT0554N (10508/8), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0006] U.S. patent application Ser. No. ______, “SYSTEM FOR AN ADAPTIVE EXCITATION PATTERN FOR SPEECH CODING,” Attorney Reference Number: 98RSS366 (10508/9), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0007] U.S. patent application Ser. No. ______, “SYSTEM FOR ENCODING SPEECH INFORMATION USING AN ADAPTIVE CODEBOOK WITH DIFFERENT RESOLUTION LEVELS,” Attorney Reference Number: 00CXT0670N (10508/13), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0008] U.S. patent application Ser. No. ______, “CODEBOOK TABLES FOR ENCODING AND DECODING,” Attorney Reference Number: 00CXT0669N (10508/14), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0009] U.S. patent application Ser. No. ______, “BIT STREAM PROTOCOL OF TRANSMISSION OF ENCODED VOICE SIGNALS,” Attorney Reference Number: 00CXT0668N (10508/15), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0010] U.S. patent application Ser. No. ______, “SYSTEM FOR FILTERING SPECTRAL CONTENT OF A SIGNAL FOR SPEECH ENCODING,” Attorney Reference Number: 00CXT0667N (10508/16), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0011] U.S. patent application Ser. No. ______, “SYSTEM OF ENCODING AND DECODING SPEECH SIGNALS,” Attorney Reference Number: 00CXT0665N (10508/17), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0012] U.S. patent application Ser. No. ______, “SYSTEM FOR SPEECH ENCODING HAVING AN ADAPTIVE FRAME ARRANGEMENT,” Attorney Reference Number: 98RSS384CIP (10508/18), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

[0013] U.S. patent application Ser. No. ______, “SYSTEM FOR IMPROVED USE OF SUBCODEBOOKS,” Attorney Reference Number: 00CXT0569N (10508/19), filed on Sep. 15, 2000, and is now U.S. Pat. No. ______.

BACKGROUND OF THE INVENTION

[0014] 2. Technical Field

[0015] This invention relates to speech coding, and more particularly, to a system that enhances the perceptual quality of digital processed speech.

[0016] 3. Related Art

[0017] Speech synthesis is a complex process that often requires the transformation of voiced and unvoiced sounds into digital signals. To model sounds, sounds are sampled and encoded into a discrete sequence. The number of bits used to represent the sound can determine the perceptual quality of synthesized sound or speech. A poor quality replica can drown out voices with noise, lose clarity, or fail to capture the inflections, tone, pitch, or co-articulations that can create adjacent sounds.

[0018] In one technique of speech synthesis known as Code Excited Linear Predictive Coding (CELP), a sound track is sampled into a discrete waveform before being digitally processed. The discrete waveform is then analyzed according to certain select criteria. Criteria such as the degree of noise content and the degree of voice content can be used to model speech through linear functions in real and in delayed time. These linear functions can capture information and predict future waveforms.

[0019] The CELP coder structure can produce high quality reconstructed speech. However, coder quality can drop quickly when the coder's bit rate is reduced. To maintain a high coder quality at a low bit rate, such as 4 Kbps, additional approaches must be explored. This invention is directed to providing an efficient coding system of voiced speech that accurately encodes and decodes the perceptually important features of voiced speech.

SUMMARY

[0020] This invention is a system that enhances the perceptual quality of reconstructed speech. The system adds short-term enhancements to the spectral envelope of coded voice segments. The system includes a fixed codebook, an adaptive codebook, an enhancement circuit, and a summing circuit. The enhancement circuit interconnects an output of the fixed codebook to a summing circuit. The summing circuit adds an adaptive codebook contribution to a fixed codebook contribution. In another aspect, the enhancement circuit may be connected directly to a synthesis filter.

[0021] Other systems, methods, features, and advantages of the invention will be or will become apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the invention, and be protected by the accompanying claims.

BRIEF DESCRIPTION OF THE FIGURES

[0022] The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention. Moreover, in the figures, like reference numerals designate corresponding parts throughout the different views.

[0023]FIG. 1 is a partial block diagram of a speech communication system incorporated in a variant of a Code Excited Linear Prediction System (CELPS) known as the eXtended Code Excited Linear Prediction System (eX-CELPS).

[0024]FIG. 2 illustrates a fixed codebook of FIG. 1.

[0025]FIG. 3 illustrates a spectral envelope and a fine spectral structure of a speech segment.

[0026]FIG. 4 is a flow diagram of an enhancement of FIG. 1.

[0027]FIG. 5 illustrates a discrete implementation of the enhancement of FIG. 1.

[0028]FIG. 6 is a block diagram of an alternative embodiment of the invention.

[0029]FIG. 7 illustrates an exemplary z-plane.

[0030]FIG. 8 is a block diagram of an alternative speech coding system implemented in an encoder.

[0031]FIG. 9 is a block diagram of an alternative speech coding system implemented in a decoder.

[0032] The dashed lines drawn in FIGS. 1, 6, 8, and 9 represent direct and indirect connections. For example, the fixed codebook 102 of FIG. 1 may be directly or indirectly connected to other circuit components including circuits, devices, etc. The fixed codebook 102 can also include one or more subcodebooks as illustrated in FIG. 2. Similarly, the dashed lines of FIG. 4 illustrate that other functions can occur before or after each illustrated step.

DETAILED DESCRIPTION

[0033] Long-term enhancements to codebook excitations can improve the perceptual quality of reconstructed speech. Perceptual coders may add selective enhancements to the fine spectral structure that represents the long-term correlation of coded voiced segments. These enhancements, however, are not used to enhance the spectral envelope that represents the short-term correlation of coded voice segments. The addition of a short-term enhancement brings back some quality loses that can be caused by bandwidth expansion used in a Linear Prediction Coding (LPC) parameter quantization. A bandwidth expansion moves synthesis filter poles away from the unit circle.

[0034]FIG. 1 is a partial block diagram of a speech coding or speech communication system 100 incorporated in a variant of a Code Excited Linear Prediction System (CELPS) known as the eXtended Code Excited Linear Prediction System (eX-CELPS). Conceptually, eX-CELPS achieves toll quality at a low bit rate by emphasizing the perceptually important features of a sampled input signal (i.e., a voiced speech signal) while de-emphasizing the auditory features that are not perceived by a listener. Using a process of linear predictions, this embodiment can represent any speech sample. The short-term prediction of speech s at an instant n can be approximated by Equation 1:

s(n)≈a ₁ s(n−1)+a ₂ s(n−2)+ . . . +a _(p) s(n−p)  (Equation 1)

[0035] where a₁, a₂, . . . a_(p) are Linear Prediction Coding coefficients (LPC coefficients) and p is the Linear Prediction Coding order. The difference between the speech sample and the predicted speech sample is called the prediction residual r(n) that has a similar level of periodicity as the speech signal s(n). The LPC residual r(n) can be expressed as:

r(n)=s(n)−a ₁ s(n−1)−a ₂ s(n−2)− . . . −a _(p) s(n−p)  (Equation 2)

[0036] and can be re-written as:

s(n)=r(n)+a ₁ s(n−1)+a ₂ s(n−2)+ . . . +a _(p) s(n−p)  (Equation 3)

[0037] A closer examination of Equation 3 reveals that a current speech sample can be broken down into a predictive portion a₁s(n−1)+a₂s(n−2)+ . . . +a_(p)s(n−p) and the LPC residual r(n). The Long Term Prediction residual (LTP residual) r₂(n) is defined through the LPC residual r(n) and an adaptive codebook pitch prediction signal g_(p)e(n−Lag) 128.

r ₂(n)=r(n)−g _(p) e(n−Lag)  (Equation 4)

[0038] It is the filtering of the excitation signal e(n) 106 by a synthesizer or a synthesis filter 108 that produces the reconstructed speech signal s′(n) 110. The Lag is a measure of the pitch delay that is preferably the true pitch period. Thus, the excitation signal e at an instant n 106 can be expressed as:

e(n)=g _(c) v(n)+g _(p) e(n−Lag)  (Equation 5)

[0039] where v(n) 120 is the quantized output of the fixed codebook 102 and the adaptive codebook pitch prediction e(n−Lag) 114 is the output of the adaptive codebook 112.

[0040] Thus, to accurately reproduce voiced and unvoiced speech segments, the excitation signal e(n) 106 is created through a linear combination of the outputs from an adaptive codebook 112 and a fixed codebook 102. It must be emphasized that codebooks 102 and 112 should be interpreted in a very broad sense to include single and multiple sub codebooks.

[0041] The adaptive codebook 112 generates signals that represent the periodicity of the speech signal s(n). In this embodiment, the content of the adaptive codebook 112 is formed from previously reconstructed excitations signals e(n) 106. These signals repeat the content of a selectable range of previously sampled signals that lie within adjacent subframes. The content is stored in memory. Due to the high-degree of correlation that exists between the current and previous adjacent subframes, the adaptive codebook 112 tracks signals through selected adjacent subframes and then uses these previously sampled signals to generate the entire or a portion of the current excitation signal e(n) 106.

[0042] The second codebook used to generate the entire or a portion of the excitation signal e(n) 106 is the fixed codebook 102. The fixed codebook 102 primarily contributes the non-predictable or non-periodic portion of the excitation signal e(n) 106. This contribution improves the approximation of the speech signal s(n) when the adaptive codebook 112 cannot effectively model non-periodic signals. When noise-like structures or non-periodic signals exist in a sound track because of rapid frequency variations in voiced speech or because transitory noise-like signals mask voiced speech, for example, the fixed codebook 102 produces an approximation of these non-periodic signals that cannot be captured by the adaptive codebook 112.

[0043] The overall objective of the selection of codebook entries in this embodiment is to create the best excitations that approximate the perceptually important features of a speech segment. To improve performance, a modular codebook structure is used in this embodiment that structures the codebooks into multiple sub codebooks. Preferably, the fixed codebook 102 is comprised of at least three sub codebooks 202-206 as illustrated in FIG. 2. Two of the fixed sub codebooks are pulse codebooks 202 and 204 such as a 2-pulse sub codebook and a 3-pulse sub codebook. The third codebook 206 is a Gaussian codebook or a higher-pulse sub codebook. Preferably, the level of coding further refines the codebooks, particularly defining the number of entries for a given sub codebook. Further details of the codebooks are described in the co-pending patent application entitled: “System of Encoding and Decoding Speech Signals” by Yang Gao, Adil Beyassine, Jes Thyssen, Eyal Shlomot, and Huan-yu Su that is incorporated by reference.

[0044] Following a search of the fixed sub codebooks that yields the best output signals, some enhancements h₁, h₂, h₃, . . . h_(n) are filtered or convoluted with the outputs of the codebooks to enhance the perceptual quality of the modeled signal. These enhancements preferably track select aspects of the speech segment and are calculated from subframe to subframe. An enhancement h₂ is introduced by filtering or convolving the output of the fixed codebook.

[0045] As shown in FIG. 3, a sound track can be characterized by its properties in the power spectrum 300. In the power spectral domain, the power spectral envelope or pure LPC spectrum 302 corresponds to the “short-term” time domain correlations and the underlying fine structure 304 corresponds to the “long-term” time domain correlations. Samples of both the spectral envelope 302 and fine structure 304, in part, define the LPC coefficients a₁, a₂, . . . a_(p). Preferably, an autocorrelation method estimates the LPC coefficients although other methods that minimize prediction error for data sequences may also be used. When an autocorrelation method is used, the synthesis filter 108 is stable. In practical terms this means that the poles of the synthesis filter represented by the LPC coefficients lie within the unit circle 702 of the z-plane 700 shown in FIG. 7.

[0046] Before transmitting LPC coefficients, the LPC coefficients are subject to a quantization. Quantization can create an unstable synthesis filter 108 because small changes in the LPC coefficients can lead to a large change in the power spectrum 300. Accordingly, a bandwidth expansion may be used before the LPC quantization to make the formant structure less sharp by moving the poles of the bandwidth filter away from the circumference or toward the origin of the unit circle 702 in the z-plane 700. As shown in FIGS. 1 and 6, a short-term enhancement h₂ may be connected to an output of a fixed codebook 102 or to an output of a summing circuit 118. Preferably, the short-term enhancement h₂ occurs after the LPC quantization so that the short-term enhancement h₂ recovers some of the quality losses that can be caused by the bandwidth expansion. In practice, the short-term enhancement h₂ makes the combined spectral envelope sharper without affecting the stability of the synthesis filter 108 by moving the poles of the h₂ enhancement toward the circumference or away from the origin of the unit circle 702 in the z-plane 702.

[0047] As shown in FIG. 1, the vector v(n) 120 is selected by a fixed codebook index 130. The vector v(n) 120 is filtered or convolved by enhancement h₂ and then scaled by a scalar or a scaling circuit g_(c) 122. Preferably, the enhancement h₂ is a spectral filter that emphasizes the formant structure 306 of the spectral envelope 302 shown in FIG. 3. In this embodiment, the spectral filter is defined by the transfer function H₂(z)=1/A(z/α) where α is preferably a small value. α, for example, can be less than 0.1. The output of the spectral filter H₂(z)V(z) 126 is then combined with the scaled pitch prediction g_(p)e(n−Lag) 128 at a summing point by a summing circuit 118 to create the excitation signal e(n) 106.

e(n)=g _(c) ·h ₂(n)*v(n)+g _(p) e(n−Lag)  (Equation 6)

[0048] To reconstruct the peaks 306 of the LPC spectrum 302 of FIG. 3, the filter coefficients are preferably calculated through an expansion device. Preferably, the expansion device replaces the LPC coefficients a₁, a₂, . . . a_(p) with scaled coefficients γ¹a₁, γ²a₂, . . . γ^(p)a_(p). The replacement of a_(p) with γ^(p)a_(p) is equivalent to scaling up the radii of all poles of the synthesis filter 108 by a factor of γ. This results in the creation of sharp pitch harmonic peaks that approximate the pitch harmonic peaks 306 of the pure LPC spectrum 302.

[0049]FIG. 4 is a flow diagram of the h₂ enhancement that can filter the excitation output of any codebook to enhance the perceptual quality of a reconstructed speech signal s′(n). At step 402, the fixed codebook index 130 is calculated and an output of the fixed codebook 102 is generated. The calculated index 130 of the fixed codebook 102 preferably results in the smallest difference between the original speech signal s(n) and the reconstructed s′(n) speech signal 110. At step 404, the vector v(n) 120 is filtered by the h₂ enhancement which emphasizes the sharp peaks 306 of the LPC spectrum 302. At step 406, an adaptive scaling factor g_(c) is used to amplify or attenuate the fixed codebook contribution vector v(n) 120 to the excitation signal e(n) 106. At step 408, the excitation signal e(n) 106 is constructed from the adaptive 112 and the fixed codebook 102 contributions. The adaptive contribution, which is the scaled pitch prediction g_(p)e(n−Lag) 128, is added to the fixed codebook contribution which is the enhanced scaled vector H₂(z)V(z) 126.

[0050] Of course, the enhancement h₂ also can be implemented in the discrete-domain through a convolver having at least two ports or means 502 comprising a digital controller (i.e., a digital signal processor), one or more enhancement circuits, one or more digital filters, or other discrete circuitry. These implementations illustrated in FIG. 5 can be described as follows:

V′(z)=H ₂(z)V(z)  (Equation 7)

[0051] From the foregoing description it should be apparent that the enhancement h₂ to the spectral envelope 302 also can be added after the fixed codebook contribution is added to the adaptive codebook contribution. As FIG. 6 illustrates, the power spectrum envelope 302 can be enhanced by h₂ after the coefficients that characterize the excitation signal e(n) 106 are summed. It should also be apparent that the invention is not limited to a particular coding technology. Any perceptual coding technology can be used including a Code Excited Linear Prediction System (CELP) and an Algebraic Code Excited Linear Prediction System (ACELP).

[0052] The invention seamlessly provides an efficient coding system that improves the encoding and the decoding of perceptually important features of speech signals. The short-term enhancement need not be limited to a post processing application. Preferably, the short-term enhancement is integrated within or is a unitary part of an encoder related to a closed-loop search and a decoder as illustrated in FIGS. 8 and 9.

[0053] Referring to FIG. 8, the fixed codebook contribution v(n) 120 in an encoder 802 can be obtained in a closed loop. Optimization of a closed-loop prediction is accomplished by minimizing the power of a closed loop residual signal é(n) 804 defined by s′(n)−s(n). Preferably, the closed loop residual signal é(n) 804 is filtered by a weighting function such as a tunable perceptual weighting filter W(z) 806 or a pole-zero filter.

[0054] To illustrate the operation of a closed-loop embodiment of the encoder 802, FIG. 8 shows the reconstructed speech signal s′(n) 110 subtracted from the speech signal s(n) by a subtracting circuit 808. The difference, which is preferably the closed loop residual signal é(n) 804, is filtered by the weighting filter W(z) 806. The filtered closed loop residual signal é(n) 804 is conditioned by a minimizing circuit 810, which derives the fixed codebook index 130. Preferably, the minimizing circuit 810 comprises software and/or hardware that minimize the closed loop residual signal é(n) 804 through a closed loop search of the fixed codebook index 130. In alternative embodiments, the closed-loop selection of the fixed codebook index 130 is repeated until a desired reconstructed speech signal s′(n) 110 resolution is attained.

[0055] In the decoder 902 illustrated in FIG. 9, a post enhancement function may be implemented to filter and condition the reconstructed speech signal s′(n) 110. In this embodiment, a post processing 904 conditions the reconstructed speech signal s′(n) 110 by sharpening the formants' 306 bandwidths. Preferably, the post processing 904 minimizes the noise that may lie within the spectral valleys between the formants 306 by emphasizing the formants' bandwidths.

[0056] While various embodiments of the invention have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible that are within the scope of this invention. Accordingly, the invention is not to be restricted except in light of the attached claims and their equivalents. 

What is claimed is:
 1. A speech communication system comprising: a first codebook that characterizes a speech segment; a second codebook that characterizes the speech segment; a convolver electrically connected to an output of the second codebook; and a synthesizer electrically connected to an output of the convolver and an output of the first codebook, the convolver being configured to emphasize a formant structure of a spectral envelope of the speech segment.
 2. A speech coding system comprising: an excitation that characterizes a speech segment; a convolver having an input configured to receive the excitation; and a synthesizer coupled to an output of the convolver, the convolver being configured to emphasize a formant structure of a spectral envelope of the speech segment in a closed-loop of an encoder.
 3. The system of claim 2 wherein the excitation is derived from an output of a first codebook and a second codebook.
 4. The system of claim 3 wherein the first codebook comprises an adaptive codebook.
 5. The system of claim 4 wherein the second codebook comprises a fixed codebook.
 6. The system of claim 5 further comprising a minimizing circuit coupled to the fixed codebook.
 7. The system of claim 6 further comprising a weighting filter coupled to the minimizing circuit.
 8. The system of claim 7 further comprising a subtracting circuit coupled to the synthesizer and the weighting filter.
 9. The system of claim 3 wherein the convolver generates a convoluted result of an enhancement signal and at least an output signal of the second codebook.
 10. The system of claim 2 wherein the convolver is electrically coupled to an output of a summing circuit.
 11. The system of claim 2 wherein the system comprises a Code Excited Linear Prediction System.
 12. The system of claim 2 wherein the system comprises an eXtended Code Excited Linear Prediction System.
 13. The system of claim 2 wherein the convolver comprises a short-term enhancement circuit configured to enhance at least one of the formants of the spectral envelope.
 14. The system of claim 2 wherein the convolver comprises a short-term enhancement circuit configured to enhance the formant structure of the spectral envelope.
 15. The system of claim 2 wherein the convolver comprises a spectral filter configured to modify an input signal by a transfer function of the form 1/A(z/α).
 16. The system of claim 15 wherein α is less than about 0.1.
 17. The system of claim 2 wherein the convolver is configured to emphasize the formant structure of the spectral envelope of the speech segment in a decoder.
 18. A speech coding system comprising: a fixed codebook that characterizes a speech segment; an adaptive codebook that characterizes the speech segment; means configured to emphasize a formant structure of an envelope of the speech segment connected to an output of the fixed codebook; and a synthesizer connected to an output of the means.
 19. The system of claim 18 wherein the means emphasizes the formant structure by convolving two time domain signals.
 20. The system of claim 18 wherein the means comprises a filter.
 21. The system of claim 18 wherein the means comprises a convolver.
 22. The system of claim 18 wherein the means is connected to an output of a summing circuit.
 23. A speech coding system comprising: a synthesis filter; and a short-term enhancement filter directly connected to an input of said synthesis filter, the short-term enhancement being configured to emphasize a formant structure of a spectral envelope of a speech segment in an encoder and a decoder.
 24. A method that improves speech coding comprising: generating a fixed codebook index to select an excitation; scaling the excitation by an adaptive factor; and filtering the scaled excitation by an enhancement that emphasizes the formants of a Linear Prediction Coding spectrum in a closed loop of an encoder.
 25. The method of claim 24 further comprising summing the filtered and scaled excitation with an output of an adaptive codebook.
 26. The method of claim 25 further comprising filtering the summed signal by a synthesis filter.
 27. The method of claim 25 further convolving the summed signal and filtering the convoluted signal by a synthesis filter.
 28. The method of claim 25 wherein the act of filtering comprises a device having a transfer function of the form 1/A(z/α).
 29. The method of claim 28 wherein α is less than about 0.1.
 30. The method of claim 24 wherein the filtering of the scaled excitation by the enhancement that emphasizes the formants of the Linear Prediction Coding spectrum occurs in a decoder.
 31. The method of claim 24 wherein the fixed codebook index is derived by subtracting a reconstructed speech signal from a speech signal; filtering the difference between the reconstructed speech signal and the speech signal through a weighting function; and minimizing the filtered difference. 